// SPDX-License-Identifier: GPL-3.0-or-later
// Copyright © 2019 Ariadne Devos
/* sHT -- append and iterate a suffix */

#include <stddef.h>
#include <sHT/index.h>
#include <sHT/string.h>

size_t
sHT_append(char *to, const char *from, size_t length0, size_t length1, size_t i0, size_t i1)
{
	/* Compute the number of bytes that can be read and written. */
        size_t todo = sHT_min_size(length0 - i0, length1 - i1);
        size_t i;
	/* Then copy them. */
        sHT_index_iterate(i, todo)
                to[i0 + i] = from[i1 + i];
        return i;
}
